package 组合设计模式;

import java.util.ArrayList;
import java.util.List;

/**
 * 统一的一个抽象
 */
public abstract class Root {

    protected List<Root> foldFiles = new ArrayList<>();

    private String name;

    public Root(String name) {
        this.name = name;
    }

    abstract void addFile(Root file);

    abstract void delFile(Root file);

    abstract List<Root> listFile();

    @Override
    public String toString() {
        return "Root{" +
                "foldFiles=" + foldFiles +
                ", name='" + name + '\'' +
                '}';
    }
}
